﻿namespace EasyToolkit.BindingTemplates
{
    using System;
    using System.Collections.Generic;
    using System.Runtime.CompilerServices;
    using EasyToolkit.BindingTemplates.Definitions;
    using EasyToolkit.BindingTemplates.Views;

    public interface IBindingTemplateManager
    {
        void AddTemplateDefinition(TemplateDefinition definition);
        TemplateDefinition GetTemplateDefinition(string name);

        void AddView(ITemplateView view);
        ITemplateView GetView(Guid ident);
        IEnumerable<ITemplateView> GetAllViews();
        void RemoveView(ITemplateView view);
        void RemoveViews(IList<ITemplateView> views);
    }
}
